Description |
---|
Créer une image 3D à partir d'une image BMP 8 bits (256 couleurs). En d'autres termes, elle permet de construire très facilement un projet 3D à partir d'une image bitmap utilisant les niveaux de gris (256 nuances de gris). Si une image BMP 32 bits est sélectionnée, l'image est représentée en points. La macro FCCreaLoft Macro Loft est utilisée pour automatiser l'opération de multi lissage. Version macro : 0.15 Date dernière modification : 2025/01/04 Version FreeCAD : 0.18 et ultérieur Téléchargement : Icône de la barre d'outils Auteur: Mario52 |
Auteur |
Mario52 |
Téléchargement |
Icône de la barre d'outils |
Liens |
Page des macros Comment installer une macro Comment créer une barre d'outils |
Version Macro |
0.15 |
Dernière modification |
2025/01/04 |
Version(s) FreeCAD |
0.18 et ultérieur |
Raccourci clavier |
None |
Voir aussi |
![]() |
Cette petite macro permet de construire très facilement un projet 3D à partir d'une image bitmap avec 256 nuances de gris.
J'espère que cette macro va changer notre façon de penser lors de la modélisation avec la CAO et la conversion CNC en objets 3D avec peu ou pas d'intervention.
Tout devient possible quelle que soit la complexité de l'image!
La Macro Loft est utilisé pour automatiser les opérations de multi lissage.
Temporary code for external macro link. Do not use this code. This code is used exclusively by Addon Manager. Link for optional manual installation: Macro
# This code is copied instead of the original macro code # to guide the user to the online download page. # Use it if the code of the macro is larger than 64 KB and cannot be included in the wiki # or if the RAW code URL is somewhere else in the wiki. from PySide import QtGui, QtCore diag = QtGui.QMessageBox(QtGui.QMessageBox.Information, "Information", "This macro must be downloaded from this link\n" "\n" "https://gist.githubusercontent.com/mario52a/262317bc7d8555885b0e/raw/f18613c8bfd142e644ba79fc8dd34a5f72282f18/Macro%2520FCTexture.FCMacro" + "\n" "\n" "Quit this window to access the download page") diag.setWindowFlags(QtCore.Qt.WindowStaysOnTopHint) diag.setWindowModality(QtCore.Qt.ApplicationModal) diag.exec_() import webbrowser webbrowser.open("https://gist.githubusercontent.com/mario52a/262317bc7d8555885b0e/raw/f18613c8bfd142e644ba79fc8dd34a5f72282f18/Macro%2520FCTexture.FCMacro")
Texture 004 Honda
Cette macro nécessite une image en 256 nuances de gris (0-255). Par conséquent, avant d'exécuter la macro, convertissez votre image en niveaux de gris (noir et blanc). Lors de l'exécution de la macro, le nombre de couleurs est détecté automatiquement. Note : si l'image a plus de 256 couleurs, une autre fonction est attendue (en cours). Chaque couleur (niveau de gris) est considérée comme une profondeur, le blanc (255) le niveau haut et le noir (0) le niveau le plus bas (profond).
La configuration se fait avant l'ouverture du fichier, les valeurs par défaut sont les réglages prévu pour obtenir un projet de dimensions :
Le fichier image se déroule à la manière d'un scanner x1 x2 x3 .... par incrément de 1 mm dans FreeCAD de même pour la valeur y de 1 mm à la fois. La valeur de z est donnée par la valeur de la couleur. Ces valeurs sont paramétrables dans la macro.
Remarque importante : selon la taille de l'image, le projet peut devenir très volumineux! Par exemple, une simple image de (100px x 100px) largeur/hauteur sera : 100 x 100 = 10000 points. Chacun des 10 000 points correspond à une coordonnée, ce qui signifie donc 10000 coordonnées X, 10000 Y et 10000 Z dans la réalité.
La valeur de début de l'opération s'adapte automatiquement à la fonction choisie : 0 si le réglage est sur noir (Black) ou sur 255 si le réglage est sur blanc (White) ou 19 si le réglage est sur noir (Black)
true
(false
par défaut)Macro_Texture.FCMacro
Téléchargez la macro sur Gist Macro FCTexture.FCMacro
Les images ont été inclinées pour accentuer l'effet 3D.
Honda
Un exemple de réalisation avec l'option contour
Ici un exemple d'une image .bmp convertie en points et restaure l'image dans FreeCAD. La largeur de l'image est de 6.5 nm
Merci à Yorik pour avoir donné son autorisation pour l'utilisation de son logo
Ici un exemple d'une image bmp convertie en objet 3D de 6.7 nm de large.
Merci à Yorik pour avoir donné son autorisation pour l'utilisation de son logo
Le logo de FreCAD.
Une partie du fond décran de FreeCAD (Le fichier sur le forum).
Une portion d'une nappe de table.
Une tôle larmée.
Mode Plan: Dans l'image de gauche le fond blanc a été ignoré et toutes les autres couleurs sont affichées, dans l'image de droite la couleur noire a été ignorée et toutes les autres couleurs sont affichées (le niveau peut être modifié avec l'option "Capping")(un exemple sur le forum).
Exemple avec une image représentant la topographie d'un terril chaque gradin correspond à un degrés de couleur différent.
Exemple d'image convertie en caractères ASCII (pas encore implémenté).
Procédure pour créer un solide:
1: Créer les lofts avec l'outil ou avec la
Macro Loft
2: Sélectionnez l'ensemble et faites une opération d'extrusion avec l'outil
3A: Pour Linux téléchargez GMSHMesh (auteur psicofil) Macro GMSH Wiki page
3B: Pour Windows téléchargez GmshMesh2.zip dézippez le fichier et installez le dans votre répertoire Mod (author ulrich1a)
4: Créez votre objet Mesh et utilisez le.
Votre objet converti en objet mesh avec GmshMesh.
La discussion sur le forum pour donner vos impressions.
La macro Macro Loft pour automatiser le multi loft.
How to handle pdf import properly and feasibly?
####new2
pathFile = os.path.dirname(SaveName) + "/" #= C:/Provisoire400/
formatFichier = os.path.splitext(SaveName)[1] #= .png
SaveName = os.path.splitext(SaveName)[0] #= /home/kubuntu/.FreeCAD/Macro/Texture_007_H #= C:/Provisoire400/image3D
SaveNameformatFichier = SaveName + formatFichier #= C:/Provisoire400/image3D.png
####new2
FreeCAD.ParamGet("User parameter:BaseApp/Preferences/Macros/FCMmacros/FCTexture").SetString("Path",pathFile)
####new
ver 0.3 : 28/03/2014 :commenté la ligne "# self.checkBox_5.setAccessibleName(_fromUtf8(""))" qui a causé une erreur d'exécution à partir de la version FreeCAD : Version: 0.14.3343 (Git), Python version: 2.7.6, Qt version: 4.8.5